/*
	Copyright (c) 2010 <copyright holders>
	This source code is licensed under The MIT License,
	see the file LICENSE for details.
	*/

#ifndef WORLDGUI_HPP
#define WORLDGUI_HPP

#include "ForwardDecls.hpp"
#include "GameGUI.hpp"
#include "gen/auxmsg.pb.h"

namespace spelprog2 {
namespace gui {

class WorldGUI : public GameGUI {
    Game & game_;
    presentation::WorldScene & scene_;

    void initPlaySheet();

    void clickDenseFormationButton(const QuickGUI::EventArgs & ev);
    void clickLooseFormationButton(const QuickGUI::EventArgs & ev);
    void clickWedgeFormationButton(const QuickGUI::EventArgs & ev);
    void clickStopOrderButton(const QuickGUI::EventArgs & ev);
    void clickToggleHurryButton(const QuickGUI::EventArgs & ev);

    void tryChangeFormation(auxmsg::Formation formation);
public:
    WorldGUI(Game & game, Ogre::SceneManager & sceneMan, presentation::WorldScene & worldScene);
    virtual ~WorldGUI();
};

}; //gui
}; //spelprog2

#endif //WORLDGUI